2012-10-17 62 views
0

我在Android設備上運行javamail。 我用了這個問題的回答提出的jar文件:javamail線程卡在android應用程序

Sending Email in Android using JavaMail API without using the default/built-in app

當我造成從Android設備失去了連接(在\關閉無線網絡,設置飛行模式),每一個調用的函數,訪問javamail套接字,沒有返回。卡住功能的 示例(心中已經試圖呼叫上的文件夾對象和存儲對象的功能:

接近()

forceClose()

的getType()

也不例外是被拋出(試圖在範圍內拋出異常 - 它被捕獲) 沒有錯誤日誌顯示在logcat上

重要的是提及「removeMessageCounterLister」函數的作品罰款和線程沒有被卡住後電話

我有jdk7如果它的事。

非常感謝你的回答


更新: 這個問題沒有任何關係超時連接。我設置超時和連接超時參數,它們隻影響idle()函數。

當線程卡住了JavaMail的日誌寫的是「DONE」

回答

1

你可能需要配置一些超時的消息,無論是連接超時和I/O超時。請參閱javadocs以獲取您可以設置的屬性列表的協議包,例如com.sun.mail.imap package

+0

i'v試圖做到這一點。我配置了所有我發現的超時。 –

+0

我也嘗試使用mail.imaps.connectiontimeout和mail.imaps.timeout來設置連接超時。它導致在超時後空閒停止,但不解決close()和forceClose()卡住 –

+0

當線程卡住javamail日誌正在寫入的消息是「完成」 –